.json-schema-box {
    :global {
        .has-error :not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus,
        .has-error
            :not(.ant-input-affix-wrapper-disabled):not(
                .ant-input-affix-wrapper-borderless
            ).ant-input-affix-wrapper:focus,
        .has-error :not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused,
        .has-error
            :not(.ant-input-affix-wrapper-disabled):not(
                .ant-input-affix-wrapper-borderless
            ).ant-input-affix-wrapper-focused {
            border-color: #ff4d4f;
            // box-shadow: 0 0 0 2px var(--input-box-shadow-color);
        }

        .json-schema-row-form {
            .ant-form-item {
                display: flex;
                flex-direction: row;
                .ant-form-item-label {
                    flex: 8;
                    text-align: right;
                    label::after {
                        content: ":";
                        position: relative;
                        top: -0.5px;
                        margin: 0 8px 0 2px;
                        z-index: 1;
                        display: inline-flex;
                        align-items: center;
                    }
                }
                .ant-form-item-control {
                    flex: 16;
                    overflow: hidden;
                }

                .ant-form-item-label {
                    // 仅在相邻元素不是 .ant-form-item-control 时应用样式
                    &:not(:has(+ .ant-form-item-control)) {
                        display: none;
                        width: 100%;
                        padding: 0;
                        margin-bottom: 20px;
                        text-align: left;
                        border: 0;
                        border-bottom: 1px solid #e5e5e5;
                        label {
                            font-size: 21px !important;
                            color: #333;
                        }
                        label::after {
                            content: "";
                            position: relative;
                            top: -0.5px;
                            margin: 0 8px 0 2px;
                            z-index: 1;
                            display: inline-flex;
                            align-items: center;
                        }
                    }
                }
            }
        }
    }
}
